package com.example.demo.enums;

import com.example.demo.config.MyConfig;

import java.util.HashMap;
import java.util.Map;

public enum FileTypeEnum {
    /**
     * 图片
     */
    IMG(1),

    /**
     * 视频
     */
    VIDEO(2),

    /**
     * 文件
     */
    FILE(3),
    ;

    private final Integer value;

    private static final Map<Integer, FileTypeEnum> VALUE_MAP = new HashMap<>();

    static {
        for (FileTypeEnum e : FileTypeEnum.values()) {
            VALUE_MAP.put(e.value(), e);
        }
    }

    public Integer value() {
        return value;
    }

    FileTypeEnum(Integer value) {
        this.value = value;
    }

    public static boolean isValid(Integer num){
        return VALUE_MAP.containsKey(num);
    }

    public static FileTypeEnum fromContentType(String contentType) {
        if (MyConfig.getImgType().contains(contentType)) {
            return IMG;
        } else if (MyConfig.getVideoType().contains(contentType)) {
            return VIDEO;
        } else if (MyConfig.getFileType().contains(contentType)) {
            return FILE;
        }else{
            return null;
        }
    }

}
